package 动态规划;

/**
 * @Author: biubiu0002
 * @Date: 2021-09-27 21:20
 **/
public class 解码方法 {
    public static void main(String[] args) {

    }

    public int numDecodings(String s) {
        int n = s.length();
        int[] dp = new int[n+1];
        dp[0]=1;
        for(int i=1;i<=n;i++){
            char c = s.charAt(i-1);

            if(c!='0'){
                dp[i]+=dp[i-1];
            }
            if(i>1&&s.charAt(i-2)!='0'&&(10*(s.charAt(i-2)-'0'))+c-'0'<=26){
                dp[i]+=dp[i-2];
            }
        }
        return dp[n];

    }
}
